With the recent growth of social media such as Facebook, YouTube, Twitter, and the proliferation of digital devices such as mobile devices, users are no longer simple data consumers, but play roles of data producers. As such, the amount of data has rapidly increased and the types of data have become diversified, which has led us to a big data era. In order to process such big data, distributed storage management technologies such as Hadoop and parallel database management system (DBMS) are currently utilized.
In general, the distributed storage management technologies are required to store and process data in storages. Hence, costs due to low speed of I/O may increase and bottlenecks may be generated in the nodes. In order to solve these problems, distributed cache technologies of storing cache data in a plurality of distributed cache servers are currently used as a means for providing reliable, low-cost data storing scheme in cloud infrastructure.
According to the distributed cache technologies, a multicast-based communication protocol is used to control cache data, etc., and reliability must be guaranteed in processing cache data distributed over the network faster and more efficiently.
However, multicast technologies for enhancing a reliability have been studied and used in many fields until now, but there is a problem that it is difficult to guarantee a reliability of multicast in a distributed cache environment.
Since multicast is a process based on a large number of receivers, acknowledgments (ACK) from the receivers are required to guarantee as much reliability as TCP communications.
However, since the acknowledgments from the large number of the receivers must be managed, if an efficient algorithm is not used, side effects such as excessive network load, consumption of CPU and memory resources during acknowledgment processes, and long response time due to them may be generated.